﻿namespace HCore
{
    public abstract class BaseGameEntity
    {
        private int _eType;

        private int _id;

        protected HGame _game;

        public Vector3 position;

        public int ID => _id;
        
        public void SetID(int id)
        {
            _id = id;
        }

        public int eType => _eType;

        public BaseGameEntity(int eType, HGame game)
        {
            _eType = eType;
            _game = game;
        }

        public abstract void Dispose();

        public virtual bool HandleMessage(Telegram msg)
        {
            return false;
        }
        
        public virtual int CalculateChecksum()
        {
            return 0;
        }
    }
}